package com.roundarch.flex.controls.intervals
{
    import com.roundarch.flex.controls.graphControlInterfaces.IInterval;
    import com.roundarch.flex.controls.graphControlInterfaces.IIntervalCollection;
    import flash.events.Event;
    import flash.events.EventDispatcher;
    import flash.events.IEventDispatcher;

    public class IntervalCollectionBase extends EventDispatcher implements IIntervalCollection
    {
        //---------------------------------------------------------------------
        //
        //  Properties
        //
        //---------------------------------------------------------------------
        //-----------------------------
        // ready
        //-----------------------------
        /**
         * Should return true once the interval has bene fully initialized.
         */
        public function get ready() : Boolean
        {
            return false;
        }

        //---------------------------------------------------------------------
        //
        //  Constructor
        //
        //---------------------------------------------------------------------
        /**
         *  Constructor
         */
        public function IntervalCollectionBase(target : IEventDispatcher = null)
        {
            super(target);
        }

        //---------------------------------------------------------------------
        //
        //  Methods
        //
        //---------------------------------------------------------------------
        public function getIntervalFor(value : Number) : IInterval
        {
            throw new Error("abstract class");

            return null;
        }

        public function getIntervalsFor(startValue : Number, endValue : Number) : Array
        {
            throw new Error("abstract class");

            return null;
        }
    }
}
